package com.nyist.myticket.web.config;

import org.springframework.context.annotation.Configuration;

/**
 * * 过滤器 配置
 *
 * @author yangxiaogen
 * @date 2022/3/3 10:56
 */
@Configuration
public class WebConfiguration {

    /*@Bean
    public FilterRegistrationBean encodingFilter() {
        FilterRegistrationBean registrationBean = new FilterRegistrationBean<>();

        // 将自定义的 filter 注册进 filter 注册表
        registrationBean.setFilter(new MyEncodingFilter());
        // 添加 类型,
        // 过滤 应用程序中所有资源, 当前的应用程序根下的所有文件夹, * 前面要有 /
        registrationBean.addUrlPatterns("/*");
        // 过滤 指定类型的文件资源, 当前应用程序根目录下的所有 .html 文件, 注意 .html 前面没有 /
        //registrationBean.addUrlPatterns("*.html");
        // 过滤 指定目录下的所有文件, 当前应用程序根目录下的 controller 子目录下的所有文件
        registrationBean.addUrlPatterns("/controller/*");
        // 过滤指定文件
        registrationBean.addUrlPatterns("/index.html");
        // ...还可以有很多

        StringBuilder excludedUrls = new StringBuilder();

        // excludedUrls.append("/test");
        // excludedUrls.append("/user/*");

        registrationBean.addInitParameter(SysConstant.SYS_EXCLUDED_URLS,excludedUrls.toString());
        registrationBean.setName("encodingFilter");
        // 数值越小 , 越先执行
        registrationBean.setOrder(1);

        return registrationBean;
    }


    @Bean
    public FilterRegistrationBean loggerFilter() {
        FilterRegistrationBean registrationBean = new FilterRegistrationBean<>();

        // 将自定义的 filter 注册进 filter 注册表
        registrationBean.setFilter(new MyLogFilter());
        // 添加 类型,
        // 过滤 应用程序中所有资源, 当前的应用程序根下的所有文件夹, * 前面要有 /
        registrationBean.addUrlPatterns("/*");
        // 过滤 指定类型的文件资源, 当前应用程序根目录下的所有 .html 文件, 注意 .html 前面没有 /
        //registrationBean.addUrlPatterns(".html");
        // 过滤 指定目录下的所有文件, 当前应用程序根目录下的 controller 子目录下的所有文件
        registrationBean.addUrlPatterns("/controller/*");
        // 过滤指定文件
        registrationBean.addUrlPatterns("/index.html");
        // ...还可以有很多

        StringBuilder excludedUrls = new StringBuilder();
        excludedUrls.append("/userInfo,");
        excludedUrls.append("/userInfoCount,");
        excludedUrls.append("/callComponent/advertVideoView/*,");//放开 广告页面是不需要登录的

        registrationBean.addInitParameter(SysConstant.SYS_EXCLUDED_URLS,"");
        registrationBean.setName("loggerFilter");
        // 数值越小, 级别越高
        registrationBean.setOrder(2);

        return registrationBean;
    }*/


}
